package com.xbongbong.paas.pojo.dto;

import com.xbongbong.paas.toolbox.wrap.BaseDTO;
import com.xbongbong.saas.constant.CallCenterOrganizationCost;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * @author youli.chen
 * @version v1.0
 * @description: 企业注册入参
 * @date 2019/2/18 14:09
 * @since v1.0
 */
@Setter
@Getter
@ToString
public class CallOrgRegisterDTO extends BaseDTO {

    private Integer id;

    /**
     * 第三方话务中心方面维护的企业id
     */
    private String orgId;
    /**
     * 微应用信息，参考AppStoreTypeEnum
     */
    @NotNull(message = "{dto.msg.callOrgRegister.moduleType.NotNull}")
    private Integer moduleType;
    /**
     * 第三方话务中心方面维护的企业名称
     */
    @NotBlank(message = "{dto.msg.callOrgRegister.name.NotBlank}")
    private String name;
    /**
     * 第三方话务中心方面维护的企业别名
     */
    @NotBlank(message = "{dto.msg.callOrgRegister.alias.NotBlank}")
    private String alias;
    /**
     * 统一信用代码
     */
    @NotBlank(message = "{dto.msg.callOrgRegister.registerId.NotBlank}")
    private String registerId;
    /**
     * 第三方话务中心方面维护的企业的apikey（转换时可能为合作伙伴key）
     */
    private String apikey;
    /**
     * 是否开启通话录音听译功能
     */
    private Boolean isAudioTranslate;
    /**
     * 坐席月费
     */
    @NotNull(message = "{dto.msg.callOrgRegister.agentPrice.NotNull}")
    private BigDecimal agentPrice;

    /**
     * youli.chen
     * 接入方案：平台固话线路、客户固话线路、客户手机线路
     * @return
     */
    @NotNull(message = "{dto.msg.callOrgRegister.platformLine.NotNull}")
    private CallCenterOrganizationCost.PlatformLine platformLine;

    /**
     * youli.chen
     * 第三方结算坐席单价：平台结算-30元/月/坐席，客户结算-50元/月/坐席
     */
    @NotBlank(message = "{dto.msg.callOrgRegister.unitPrice.NotBlank}")
    private String unitPrice;
}
